package me.zhengjie.modules.web.service.order;

import me.zhengjie.config.entity.PageData;
import me.zhengjie.modules.web.domain.order.CommonPageReq;
import me.zhengjie.modules.web.domain.order.OrderListRequest;
import me.zhengjie.modules.web.domain.order.OrderListResponse;
import me.zhengjie.modules.web.domain.order.WholeBaseResponse;
import me.zhengjie.modules.web.domain.whole.WholeClassResponse;
import me.zhengjie.modules.web.domain.whole.WholeCourseResponse;
import me.zhengjie.modules.web.domain.whole.WholeReportResponse;

import java.sql.Timestamp;

public interface IOrderService {

    PageData<OrderListResponse> list(OrderListRequest request);
    PageData<WholeCourseResponse> course(CommonPageReq request);
    PageData<WholeClassResponse> classes(CommonPageReq request);
    PageData<WholeReportResponse> report(CommonPageReq request);

    boolean orderExpire2Redis(Integer orderType, String orderSn, Timestamp expireTime);
}